#ifndef PLSDLMIXERLUA_H
#define PLSDLMIXERLUA_H

#include "lua.hpp"

class PlSDLMixerLua
{
public:
static int li_Mix_AllocateChannels(lua_State* L);
static int li_Mix_FreeChunk(lua_State* L);
static int li_Mix_FreeMusic(lua_State* L);
static int li_Mix_SetPanning(lua_State* L);
static int li_Mix_SetPosition(lua_State* L);
static int li_Mix_SetDistance(lua_State* L);
static int li_Mix_SetReverseStereo(lua_State* L);
static int li_Mix_ReserveChannels(lua_State* L);
static int li_Mix_GroupChannel(lua_State* L);
static int li_Mix_GroupChannels(lua_State* L);
static int li_Mix_GroupAvailable(lua_State* L);
static int li_Mix_GroupCount(lua_State* L);
static int li_Mix_GroupOldest(lua_State* L);
static int li_Mix_GroupNewer(lua_State* L);
static int li_Mix_PlayChannel(lua_State* L);
static int li_Mix_PlayChannelTimed(lua_State* L);
static int li_Mix_PlayMusic(lua_State* L);
static int li_Mix_FadeInMusic(lua_State* L);
static int li_Mix_FadeInMusicPos(lua_State* L);
static int li_Mix_FadeInChannel(lua_State* L);
static int li_Mix_FadeInChannelTimed(lua_State* L);
static int li_Mix_Volume(lua_State* L);
static int li_Mix_VolumeChunk(lua_State* L);
static int li_Mix_VolumeMusic(lua_State* L);
static int li_Mix_HaltChannel(lua_State* L);
static int li_Mix_HaltGroup(lua_State* L);
static int li_Mix_HaltMusic(lua_State* L);
static int li_Mix_ExpireChannel(lua_State* L);
static int li_Mix_FadeOutChannel(lua_State* L);
static int li_Mix_FadeOutGroup(lua_State* L);
static int li_Mix_FadeOutMusic(lua_State* L);
static int li_Mix_Pause(lua_State* L);
static int li_Mix_Resume(lua_State* L);
static int li_Mix_Paused(lua_State* L);
static int li_Mix_PauseMusic(lua_State* L);
static int li_Mix_ResumeMusic(lua_State* L);
static int li_Mix_RewindMusic(lua_State* L);
static int li_Mix_PausedMusic(lua_State* L);
static int li_Mix_SetMusicPosition(lua_State* L);
static int li_Mix_Playing(lua_State* L);
static int li_Mix_PlayingMusic(lua_State* L);
static int li_Mix_SetSynchroValue(lua_State* L);
static int li_Mix_GetSynchroValue(lua_State* L);
static int li_Mix_CloseAudio(lua_State* L);

static void pushStaticFuncs(lua_State* L);
};
#endif